为什么我必须添加在AppStore中更新Xamarin.iOS应用程序时不使用的权限?

您所在的位置:网站首页 iu app store 为什么我必须添加在AppStore中更新Xamarin.iOS应用程序时不使用的权限?

为什么我必须添加在AppStore中更新Xamarin.iOS应用程序时不使用的权限?

2023-02-28 19:56| 来源: 网络整理| 查看: 265

我的iOS应用程序,用Xamarin.Forms开发了大约3年,发布在AppStore中。当我在过去几个月试图更新此应用程序时,我收到了一封来自App Store的电子邮件,连接如下。ITMS-90683:Info.plist中缺少目的字符串-您的应用程序的代码引用了一个或多个访问敏感用户数据的API,或者应用程序具有一个或多个允许此类访问的授权。"www.example.com"捆绑包的Info.plist文件应包含NSContactsUsageDescription密钥,该密钥带有面向用户的目的字符串,该字符串清楚而完整地解释了您的应用程序需要数据的原因。AppName.iOS.app仍需要目的字符串。有关详细信息,请访问:https://developer.apple.com/documentation/uikit/protecting_the_user_s_privacy/requesting_access_to_protected_resources. a purpose string is still required. For details, visit: https://developer.apple.com/documentation/uikit/protecting_the_user_s_privacy/requesting_access_to_protected_resources .ITMS-90683:Info.plist中缺少目的字符串-您的应用程序的代码引用了一个或多个访问敏感用户数据的API,或者应用程序具有一个或多个允许此类访问的授权。"www.example.com"捆绑包的Info.plist文件应包含一个NSMicrophoneUsageDescription密钥,该密钥带有一个面向用户的目的字符串,该字符串清楚而完整地解释了您的应用程序需要数据的原因。AppName.iOS.app仍需要目的字符串。有关详细信息,请访问:https://developer.apple.com/documentation/uikit/protecting_the_user_s_privacy/requesting_access_to_protected_resources. a purpose string is still required. For details, visit: https://developer.apple.com/documentation/uikit/protecting_the_user_s_privacy/requesting_access_to_protected_resources .ITMS-90683:Info.plist中缺少目的字符串-您的应用程序代码引用了一个或多个访问敏感用户数据的API,或者应用程序具有一个或多个允许此类访问的授权。"www.example.com"捆绑包的Info.plist文件应包含一个NSAppleMusicUsageDescription密钥,该密钥带有面向用户的目的字符串,该字符串清楚而完整地解释了您的应用程序需要数据的原因。AppName.iOS.app仍需要目的字符串。有关详细信息,请访问:https://developer.apple.com/documentation/uikit/protecting_the_user_s_privacy/requesting_access_to_protected_resources. a purpose string is still required. For details, visit: https://developer.apple.com/documentation/uikit/protecting_the_user_s_privacy/requesting_access_to_protected_resources .ITMS-90683:Info.plist中缺少目的字符串-您的应用程序的代码引用了一个或多个访问敏感用户数据的API,或者应用程序具有一个或多个允许此类访问的授权。"www.example.com"捆绑包的Info.plist文件应包含NSSiUsageDescription键,该键带有面向用户的目的字符串,该字符串清楚而完整地解释了您的应用程序需要数据的原因。AppName.iOS.app仍需要目的字符串。有关详细信息,请访问:https://developer.apple.com/documentation/uikit/protecting_the_user_s_privacy/requesting_access_to_protected_resources. a purpose string is still required. For details, visit: https://developer.apple.com/documentation/uikit/protecting_the_user_s_privacy/requesting_access_to_protected_resources .ITMS-90683:Info.plist中缺少目的字符串-您的应用程序的代码引用了一个或多个访问敏感用户数据的API,或者应用程序具有一个或多个允许此类访问的授权。"www.example.com"捆绑包的Info.plist文件应包含NSLocationAlwaysUsageDescription键,该键带有面向用户的目的字符串,该字符串清楚而完整地解释了您的应用程序需要数据的原因。AppName.iOS.app仍需要目的字符串。有关详细信息,请访问:https://developer.apple.com/documentation/uikit/protecting_the_user_s_privacy/requesting_access_to_protected_resources. a purpose string is still required. For details, visit: https://developer.apple.com/documentation/uikit/protecting_the_user_s_privacy/requesting_access_to_protected_resources .

ITMS-90683:Info.plist中缺少目的字符串-您的应用程序的代码引用了一个或多个访问敏感用户数据的API,或者应用程序具有一个或多个允许此类访问的授权。"www.example.com"捆绑包的Info.plist文件应包含NSLocationAlwaysAndWhenInUseUsageDescription键,该键带有面向用户的目的字符串,该字符串清楚而完整地解释了您的应用程序需要数据的原因。AppName.iOS.apphttps://developer.apple.com/documentation/uikit/protecting_the_user_s_privacy/requesting_access_to_protected_resources. If your app supports multiple locales, you're now required to provide a purpose string value in the Info.plist file in addition to a valid localized string across each of your app's localization folders. If you're using external libraries or SDKs, they may reference APIs that require a purpose string. While your app might not use these APIs, a purpose string is still required. For details, visit: https://developer.apple.com/documentation/uikit/protecting_the_user_s_privacy/requesting_access_to_protected_resources .ITMS-90683:Info.plist中缺少目的字符串-您的应用程序的代码引用了一个或多个访问敏感用户数据的API,或者应用程序具有一个或多个允许此类访问的授权。"www.example.com"捆绑包的Info.plist文件应包含NSLocationWhenInUseUsageDescription键,该键带有面向用户的目的字符串,该字符串清楚而完整地解释了您的应用程序需要数据的原因。AppName.iOS.app访视:https://developer.apple.com/documentation/uikit/protecting_the_user_s_privacy/requesting_access_to_protected_resources。 If your app supports multiple locales, you're now required to provide a purpose string value in the Info.plist file in addition to a valid localized string across each of your app's localization folders. If you're using external libraries or SDKs, they may reference APIs that require a purpose string. While your app might not use these APIs, a purpose string is still required. For details, visit: https://developer.apple.com/documentation/uikit/protecting_the_user_s_privacy/requesting_access_to_protected_resources .ITMS-90683:Info.plist中缺少目的字符串-您的应用程序的代码引用了一个或多个访问敏感用户数据的API,或者应用程序具有一个或多个允许此类访问的授权。"www.example.com"捆绑包的Info.plist文件应包含NSBluetoothAlwaysUsageDescription键,该键带有面向用户的目的字符串,该字符串清楚而完整地解释了应用程序需要数据的原因。AppName.iOS.app仍需要目的字符串。有关详细信息,请访问:https://developer.apple.com/documentation/uikit/protecting_the_user_s_privacy/requesting_access_to_protected_resources a purpose string is still required. For details, visit: https://developer.apple.com/documentation/uikit/protecting_the_user_s_privacy/requesting_access_to_protected_resources他们说我必须解释为什么我需要这些数据到info.plist中,但是我在应用程序的任何地方都没有做任何需要这个权限的事情。当我收到这封电子邮件时,我必须非常紧急地发布应用程序,所以我在应用程序的info.plist中输入了以下权限:"由于应用程序中使用的库,请求了权限。"。在那个版本中拒绝了5 - 6次后,我能够以某种方式更新我的应用程序。但现在我想再次更新我的应用程序,苹果再次拒绝了我的应用程序。拒绝的原因是:"你的应用使用短信欺诈扩展来阻止或过滤来自电话号码列表的消息"。然而,我在我的应用中没有使用任何短信欺诈扩展。我认为苹果以这种方式回应的原因可能是我添加到info.plist的"NSContactsUsageDescription"权限。所以我目前正在试图弄清楚为什么这些权限是强制性的。我认为这可能有两个原因。1.第一个原因可能是因为一个包,如果是因为这个包,我首先想到的就是"Xamarin.Essentials"包,因为大家都知道,很多特性都集中在"Xamarin.Essentials"包里,即使我们在这个包里使用了1 - 2个特性,我们也必须在项目里包含相同的包,我现在正在以Linker Behavior的身份启动应用程序:仅限链接框架SDK。如果问题是由Xamarin.Essential包引起的,我理解如果我设置链接器行为:链接所有,我会发送我的应用程序到市场,而不添加任何权限。它将被修复。但当我这样做时,我的应用程序无法打开。(当我按下应用程序图标打开我的应用程序时,应用程序关闭,甚至没有启动画面。)1.第二个原因可能是我在以前的版本中向应用程序添加了共享扩展功能。我不知道共享扩展功能是否需要这些权限,但在我向应用程序添加共享扩展功能后,这些权限是必需的。共享扩展是否应用这些权限?以前有没有人遇到过这种情况?如果有,你是怎么解决的?



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3